In wireless communication systems, the general functionality of a scheduler is to schedule data to a set of user equipments (UEs) on a shared set of physical resources. In general, scheduling algorithms can make use of two types of measurement information to inform the scheduling decisions, namely channel state information and traffic measurement (e.g. priority, fairness, etc). These are obtained either by performing measurements at a network node or via feedback signaling channels, or a combination of both.
There are different types of scheduling algorithms, such as Round Robin scheduling, opportunistic scheduling and proportional fair scheduling. Specifically, Round Robin scheduling gives the same priority to all the users and allocates time/frequency resources to users following a fixed manner. This type of scheduling does not consider the instantaneous channel quality of different users and multi-user diversity gain is not explored. Opportunistic scheduling is typically designed to maximize the sum of the transmitted data rates to all users simultaneously experiencing good channel conditions at different times and frequencies. But this results in the difficulty of ensuring fairness and Quality of Service (QoS) since users' data cannot always wait until the channel conditions are sufficiently favorable for transmission. Proportional fair scheduling pays more attention to latency for each user than to the total data rate achieved. This is particularly important for real-time applications such as Voice-over-IP (VoIP) or video-conferencing where a certain minimum rate must be guaranteed independently of the channel state.
Generally, the latter two scheduling algorithms, i.e., the opportunistic scheduling and the proportional fair scheduling can be described as priority metric by equation (1):
                              P          ⁡                      (            k            )                          =                              tp            ⁡                          (              k              )                                                          γ              β                        ⁡                          (              k              )                                                          (        1        )            
where k is the user index, tp and γ are respectively defined as instantaneous throughput and averaged throughput within a time window. β is a fairness factor, which tunes overall system throughput and user fairness. In particular, β can be 0 (opportunistic scheduling) or 1 (proportional fair scheduling).
More specifically, tp is calculated by user's signal to interference and noise ratio (SINR) on the basis of Shannon capacity criterion, for example as the following equation (2), where SINR can be fed back by UE as channel quality indicator (CQI) report or can be directly measured by the network node, η(0≦η≦1) is an adjusting factor between ideal Shannon capacity and real throughput.tp(k)=η·log2[1+SINR(k)]  (2)
Meanwhile, γ is averaged throughput and filtered in time domain, which is defined in the following equation (3), where λ is a forgetting factor, and 0≦λ≦1.γ(k,t)=γ(k,t−1)·λ+tp(k)·(1−λ)  (3)
However, when retransmission takes place in a wireless communication system, user fairness in the above described multi-user scheduling approaches cannot be properly guaranteed.